package com.itheima.sh.f_arraylist;
/*
    目标：熟悉使用ArrayList类中的方法
 */

import java.util.ArrayList;

public class ArrayListDemo01 {
    public static void main(String[] args) {
        //1.创建ArrayList对象
        ArrayList<String> s = new ArrayList<>();//<String>属于泛型，在这里表示限制当前集合只能存储String类型的对象
        //2.使用对象调用ArrayList类中的方法
        s.add("强哥");
        s.add("Hong kong dall");
        s.add("91.DK");
        System.out.println(s.add("91.DK"));
        s.add("瑶瑶");
        System.out.println("-----------------------------");
         /*
            public void add(int index, E element)
                    参数：
                        index:指定位置的索引
                        element：添加的索引
         */
        s.add(1, "吴签");
        //3.根据索引获取元素
        //需求：获取索引是1的位置元素
        s.get(1);
        System.out.println("s = " + s.get(1));//吴签
        System.out.println("-----------------------------");
        //4.获取集合中元素个数，获取集合的长度
        int size = s.size();
        System.out.println("集合的长度为：" + size);
        System.out.println("------------------------------");
        //5.通过上述方法对集合进行遍历
        for (int i = 0; i < s.size(); i++) {
            //6.获取元素
            String s1 = s.get(i);
            System.out.println("s1 = " + s1);
        }
        System.out.println("------------------------------");
        /*
            7.根据索引删除数据
            public E remove(int index) {}
                    参数：
                        index 表示集合的索引
                    返回值：E 表示创建集合时 ArrayList<String> 尖括号中的String，表示删除的元素
         */
        String remove=s.remove(1);
        System.out.println("remove = " + remove);//吴签
        System.out.println("------------------------------");
          /*
            8.根据元素删除
                 public boolean remove(Object o){}
                        参数：
                            o:表示要删除的元素
                        返回值：返回true表示删除成功，fasle表示删除失败
         */
        boolean boo=s.remove("91.DK");
        System.out.println("boo = " + boo);

        System.out.println("------------------------------");
 /*
            9.修改元素：
                public E set(int index, E element){}
                    参数：
                        index:表示修改元素的索引
                        element：新的元素
                    返回值：旧元素
         */
        //需求：修改第一个位置的元素变为91.强哥
        System.out.println(s.set(0, "91.强哥"));//旧值是 强哥
        for(int i=0;i<s.size();i++){
            //6.获取元素
            String element = s.get(i);
            System.out.println("element = " + element);
        }
    }
}


